package conf

import (
	"io"
	"os"

	"gopkg.in/yaml.v3"

)
// 定义配置文件的结构体
type Conf struct {
	Mysql struct {
		Username string `yaml:"username"`
		Password string `yaml:"password"`
		Host     string `yaml:"host"`
		Port     string `yaml:"port"`
	}`yaml:"mysql"`
}

// 定义方法，获取数据库的相关配置信息
func GetMysqlInfo() (*Conf, error) {
	// 打开配置文件
	file, err := os.Open("../conf/mysql.yaml")
	if err != nil {
		return nil, err
	}
	// 读取配置文件
	bytes, err := io.ReadAll(file)
	if err != nil {
		return nil, err
	}
	// 定义配置文件变量
	var conf Conf
	// 解析配置读取到的配置文件
	err=yaml.Unmarshal(bytes, &conf)
	if err!=nil {
		return nil, err
	}
	// 返回解析完的配置文件
	return &conf,nil
}
